package com.youku.plugins.programListV4
{
   import com.youku.interfaces.IPlugin;
   import com.youku.plugins.programListV4.view.ProgramListMediator;
   import flash.net.registerClassAlias;
   import flash.display.MovieClip;
   import com.youku.interfaces.IPlayerProxy;
   
   public class ProgramListFacade extends Object implements IPlugin
   {
      
      public function ProgramListFacade() {
         super();
      }
      
      private static var _instance:ProgramListFacade;
      
      public static function getInstance() : ProgramListFacade {
         if(_instance == null)
         {
            _instance = new ProgramListFacade();
         }
         return _instance as ProgramListFacade;
      }
      
      private var _programListMeidator:ProgramListMediator;
      
      private function registerSkin() : void {
         registerClassAlias("Scrollbar_Bg",Scrollbar_Bg);
         registerClassAlias("Scrollbar_up",Scrollbar_up);
         registerClassAlias("Scrollbar_over",Scrollbar_over);
         registerClassAlias("Scrollbar_down",Scrollbar_down);
         registerClassAlias("Scrollbar_disable",Scrollbar_up);
         registerClassAlias("P_item_up",P_item_up);
         registerClassAlias("P_item_over",P_item_over);
         registerClassAlias("P_item_down",P_item_over);
         registerClassAlias("P_item_disable",P_item_over);
      }
      
      public function init(param1:MovieClip, param2:IPlayerProxy) : void {
         this.registerSkin();
         this._programListMeidator = new ProgramListMediator(param1,param2);
      }
   }
}
